package com.union.core.sys.dao;

import java.util.List;
import com.union.core.sys.model.SysModuleType;

/**
 * DAO接口类: 系统模块类型
 * filename: SysModuleDao.java
 * project:  CCTR
 * @company Hainan Jowe Technology Ltd
 * @author wangxiuwu
 * @create in 2009-5-21
 * @version 1.0
 */
public interface SysModuleTypeDao {

	public List<SysModuleType> getModuleTypeList();
	
	/**
	 * 取出模块类型列表(取出有效1/无效0状态的记录)
	 * @param state int
	 * @return List
	 */
	public List<SysModuleType> getModuleTypeList(int state);
	
	/**
	 * 修改模块类型数据1
	 * @param moduleTypeId int
	 * @param moduleTypeName String
	 * @param state int
	 * @return boolean
	 */
	public boolean modifyModuleType(int moduleTypeId, String moduleTypeName,
			int state);
	
	/**
	 * 修改模块类型数据2
	 * @param moduleTypeId int
	 * @param state int
	 * @return boolean
	 */
	public boolean modifyModuleType(int moduleTypeId, int state);
	
	/**
	 * 删除模块类型数据
	 * @param moduleTypeId int
	 * @return boolean
	 */
	public boolean deleteModuleType(int moduleTypeId);
	
	/**
	 * 添加模块类型数据
	 * @param moduleTypeBean ModuleTypeBean
	 * @return boolean
	 */
	public boolean addModuleType(SysModuleType sysModuleType);
	
	//改变排序号
	public boolean changeOrderNum_moduleType(int moduleTypeId, int newOrderNum);
	
	/**
	 * 自动获取排列序号
	 * @return int
	 */
	public int getOrderNumByAuto_moduleType();
	
	//取出序号清单
	public List<Integer> getOrderNumList_moduleType() throws Exception;
	
	/**
	 * 提取信息
	 * @param MODULE_TYPE_ID int
	 * @return ModuleTypeBean
	 */
	public SysModuleType getModuleType(int MODULE_TYPE_ID);
	
	public void orderModuleType(int ModuleTypeId, String Type) throws Exception;
	
}
